var validPhoneInputs = true;
var savePhone = false; //	Нужно ли отправлять телефон на сервер
var phoneToSave = '';

function formPhone() {
	var form = '<form id= "phoneForm" method="post" style="width:500px;margin-left:30%;height:350px;position:fixed;top:70px;background:url(./contur.png) no-repeat transparent;z-index:70000;">'
	+ '<div style="margin-left:30px;font:12px tahoma;">'
	+ '<br><h3 style="color:#FF7200;text-align:left">Активировать расчет</h3>'
	+ '<br><p style="color:#black;text-align:left;font-size:11px;">Укажите Ваш мобильный номер телефона, на который будет выслан результат расчета стоимости полиса КАСКО в 25 страховых компаниях.</hp>'
	+ '<br><br><span>Мобильный телефон <b>+7&nbsp;(&nbsp;<input type="text" id="phonePrefix" name="phonePrefix"  style="width:24px;">&nbsp;)&nbsp;<input id="phoneNumber" name="phoneNumber" style="width:53px" type="text"/></b></span> '
	+ '<br><br><p style="font-size:12px;">Данная система расчетов разработана и запатентована компанией KASAG.RU и не имеет аналогов в мире. Удобство заключается в доступности расчетов в любое время, стоит просто открыть SMS! Данный сервис абсолютно бесплатен для Вас.</p> </b>'
	+ '<br><p style="line-height:20px;">Услуга полностью бесплатна!</p><p id="phoneDublicate" style="line-height:18px;">Результаты будут отправлены на номер:<br><b>+7&nbsp;(<span style="color:#EEEEEE;">000</span>)</b>&nbsp;<b><span></span><span style="color:#EEEEEE">000-00-00</span></b></p>'
	+ '<br><input type="image" src="./activate3.png" style="" />'
	+ '</div>'
	+ '</form>';
	$('#sendMail').html('<div style="z-index: 61000;" id="popupForm"></div>' + form).css('display', '');
	$('#phonePrefix').focus();
	$('#phonePrefix').keyup(function (event) {
		onRegionChange(event)
	}).bind('change', function () {
		validatePhonePrefix();
	});
	$('#phoneNumber').bind('change keyup', function () {
		validatePhoneNumber()
	});
	var marginLeft = windowWidth();
	marginLeft = (marginLeft - 500) / 2;
	$('#phoneForm').submit(function () {
		onPhoneFormSubmit();
		return false;
	}).css('margin-left', marginLeft);
	window.onbeforeunload = function (event) {
		event = event || window.event;
		event.returnValue = "\n\n\n\n\n\n\nНе упустите свой шанс значительно сэкономить сравнив цены!\n\n\n\n"
	};
	$('#submitCode').mousedown(function () {
		checkSubmitCode();
		return false;
	});
}

function checkSubmitCode() {
	if ($('#activateInput').val().length == 0) alert('Пожалуйста, заполните поле ввода кода доступа');
	else {
		$('#activateInput').css('color', 'red');
		alert('Неправильный код доступа');
	}
	return false;
}

function onRegionChange(event) {
	event = (event) ? event : window.event;
	var keycode = (event.charCode) ? event.charCode : event.keyCode;
	if (keycode == 9 || keycode == 16 || keycode == 17 || keycode == 18 || keycode == 46 || keycode > 36 && keycode < 41) return;
	var code = $('#phonePrefix').val();
	if (code.length >= 3) {
		code = code.substring(0, 3);
		$('#phonePrefix').val(code);
		$('#phoneDublicate').find('span:first').text(code).css('color', 'black');
		validatePhonePrefix();
		$('#phoneNumber').focus();
	}
}

function onPhoneFormSubmit() {

	//alert('!');
	var valid = true;
	if (!validatePhonePrefix()) valid = false;
	if (!validatePhoneNumber()) {
		valid = false;
		$('#phoneNumber').css('color', 'red');
	} else
	$('#phoneNumber').css('color', 'black');
	if (!valid) {
		alert('Мы обрабатываем только заявки из Москвы и Московской области!');
		return false;
	}
	phoneToSave = '+7 ' + $('#phonePrefix').val() + ' ' + $('#phoneNumber').val();
	window.onbeforeunload = null;
	$('#sendMail').html('').css('display', 'none');
	$('#requirePhone').text(0);

	sendPhone();
	//alert('!');
	//return false;
	calculateCasko(new Object);
	return false;
}

function validatePhoneNumber() {
	var code = $('#phoneNumber').val();
	code = code.replace(/\D/g, '')
	code = code.substring(0, 7);
	var newCode = '';
	$('#phoneNumber').val(code);
	switch (code.length) {
	case 0:
		newCode = '&nbsp;<b><span></span><span style="color:#EEEEEE">000-00-00</span></b>';
		break;
	case 1:
		newCode = '&nbsp;<b><span>' + code.substring(0, 1) + '</span>'
	+ '<span style="color:#EEEEEE">00-00-00</span></b>';
		break;
	case 2:
		newCode = '&nbsp;<b><span>' + code.substring(0, 2) + '</span>'
	+ '<span style="color:#EEEEEE">0-00-00</span></b>';
		break;
	case 3:
		newCode = '&nbsp;<b><span>' + code.substring(0, 3) + '</span>'
	+ '<span style="color:#EEEEEE">-00-00</span></b>';
		break;
	case 4:
		newCode = '&nbsp;<b><span>' + code.substring(0, 3) + '-' + code.substring(3, 4) + '</span>'
	+ '<span style="color:#EEEEEE">0-00</span></b>';
		break;
	case 5:
		newCode = '&nbsp;<b><span>' + code.substring(0, 3) + '-' + code.substring(3, 5) + '</span>'
	+ '<span style="color:#EEEEEE">-00</span></b>';
		break;
	case 6:
		newCode = '&nbsp;<b><span>' + code.substring(0, 3) + '-' + code.substring(3, 5) + '-' + code.substring(5, 6) + '</span>'
	+ '<span style="color:#EEEEEE">0</span></b>';
		break;
	case 7:
		newCode = '&nbsp;<b><span>' + code.substring(0, 3) + '-' + code.substring(3, 5) + '-' + code.substring(5, 7) + '</span>'
	+ '<span style="color:#EEEEEE"></span></b>';
		break;
	}
	var spans = $('#phoneDublicate').find('span');
	spans.eq(2).remove();
	spans.eq(1).remove();
	$('#phoneDublicate').find('b').eq(0).after(newCode);
	if (isNaN(code) || code.length != 7) return false;
	else
	return true;
}

function validatePhonePrefix() {
	var validPrefs = [800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 903, 905, 906, 909, 910, 915, 916, 917, 919, 925, 926, 929, 936, 941, 962, 963, 964, 965, 967, 968, 970, 971, 985, 997];

	var pref = $('#phonePrefix').val();
	pref = pref.replace(/\D/g, '')
	pref = parseInt(pref);
	if (isNaN(pref) || pref < 100 || pref > 999) {
		$('#phonePrefix').css('color', 'red');
		return false;
	}
	var found = false;
	for (var i = 0; i < validPrefs.length; i++)
	if (validPrefs[i] == pref) {
		$('#phonePrefix').css('color', 'black');
		return true;
	}
	$('#phonePrefix').css('color', 'red');
	return false;
}

function sendPhone() {
	alert("Внимание! Расчеты полученые онлайн производятся по нескольким страховым и могут быть неточными! Для получения консультаций и точных расчетов по всем страховым оставьте заявку нашим менеджерам!");

	var manufacturerName = $('#manInput').text();

	var cityVal = $('input:checked').filter('[name=town]').val();
	var statusVal = 0;
	if ($("#naturalPerson").attr('checked')) statusVal = 1;
	var oplataVal = $('input:checked').filter('[name="oplata"]').eq(0).val();
	driversTMP = getDriversString();
	var drvrs = (multiDrive ? 'multiDrive' : driversTMP);

	var sid = $('#sid').text();
	var pid = $('#pid').text();

	//alert(sid);
	//var drvrs=$('.f-driver');

	var price = $('#price').val();
	var str = price,
		str1 = new String("");
	// получаем текущую стоимость ТС
	for (var i = 0; i < str.length; i++)
	if (!isNaN(parseInt(str.charAt(i)))) str1 += str.charAt(i);
	price = str1;

	var hasInsurance = newForm.hasInsurance;
	var endInsurance = newForm.endInsurance;

	var garbageIndex = document.location.href.toString().indexOf('#');
	var refTMP = garbageIndex > 0 ? getVarValueFromURL((document.location.href.toString().substring(0, garbageIndex)), "ref") : getVarValueFromURL(document.location.href.toString(), "ref");
	if (typeof(refTMP) == "undefined" || refTMP == null) refTMP = "";
	$.post("savePhone.php", {
		action: 'savePhone',
		orderType: 'kasko',
		tel1: phoneToSave,
		callTime: '',
		message: '',
		clientURL: clientURL,
		carPrice: price,
		manufacturerName: manufacturerName,
		carName: carName,
		carAge: carAge,
		fr: 0,
		stoa: parseInt($('input:checked').filter("[name='sto']").val()),
		drivers: drvrs,
		id: getCookie("id"),
		ref: refTMP,
		realCost: '0',
		skName: 'РЕСО-Гарантия',
		email: '',
		address: '',
		fio: '',
		deliveryTime: '',
		comments: '',
		alarm: '',
		alarmList: alrmLst,
		city: cityVal,
		malus: '',
		newCar: 0,
		osago: osagoURI,
		guarantee: 0,
		oplata: oplataVal,
		status: statusVal,
		power: carPower,
		helm: 'left',
		preOrder: 'preOrder',
		subacc_id: sid,
		partner_id: pid,
		hasInsurance: hasInsurance,
		endInsurance: endInsurance
	}, function (data) {});
	phoneSent = true;
}
